// hair
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float4 FogNearFar;
//   float4x4 InvView;
//   float3 LightAtten2;
//   float3 LightPos2;
//   float4x3 SkinBone[30];
//   float4x4 ViewProj;
//   float4x4 WorldToLightProj;
//   float4x4 WorldView;
//
//
// Registers:
//
//   Name             Reg   Size
//   ---------------- ----- ----
//   SkinBone         c0      90
//   ViewProj         c90      4
//   WorldToLightProj c94      4
//   InvView          c98      3
//   WorldView        c101     3
//   FogNearFar       c104     1
//   LightPos2        c105     1
//   LightAtten2      c106     1
//

    vs_3_0
    def c107, 1, 765.005859, 0, 0
    dcl_position v0
    dcl_blendweight v1
    dcl_blendindices v2
    dcl_texcoord v3
    dcl_normal v4
    dcl_binormal v5
    dcl_tangent v6
    dcl_position o0
    dcl_texcoord o1
    dcl_texcoord1 o2
    dcl_texcoord2 o3
    dcl_texcoord3 o4.xyz
    dcl_texcoord4 o5.xyz
    dcl_texcoord5 o6
    dcl_texcoord8 o7
    dcl_texcoord9 o8
    add r0.x, c107.x, -v1.x
    add r0.x, r0.x, -v1.y
    add r0.x, r0.x, -v1.z
    mul r1, c107.y, v2.zyxw
    mova a0, r1.yxzw
    mul r2, v1.y, c0[a0.x]
    mad r2, v1.x, c0[a0.y], r2
    mad r1, v1.z, c0[a0.z], r2
    mad r1, r0.x, c0[a0.w], r1
    mad r2, v0.xyzx, c107.xxxz, c107.zzzx
    dp4 r3.x, r2, r1
    add r4.x, -r3.x, c98.w
    mul r5, v1.y, c1[a0.x]
    mul r6, v1.y, c2[a0.x]
    mad r6, v1.x, c2[a0.y], r6
    mad r5, v1.x, c1[a0.y], r5
    mad r5, v1.z, c1[a0.z], r5
    mad r6, v1.z, c2[a0.z], r6
    mad r6, r0.x, c2[a0.w], r6
    mad r0, r0.x, c1[a0.w], r5
    dp4 r3.y, r2, r0
    add r4.y, -r3.y, c99.w
    dp4 r3.z, r2, r6
    dp4 r0.w, r2, c103
    add r0.w, -r0.w, c104.y
    add r4.z, -r3.z, c100.w
    dp3 r1.w, r4, r4
    rsq r1.w, r1.w
    mul o3.xyz, r1.w, r4
    add r2.xyz, -r3, c105
    dp3 r1.w, r2, r2
    rsq r1.w, r1.w
    rcp r2.w, r1.w
    mul r2.xyz, r1.w, r2
    mad r1.w, c106.y, r2.w, c106.x
    mul r2.w, r2.w, r2.w
    mad r1.w, r2.w, c106.z, r1.w
    rcp o6.w, r1.w
    dp3 r4.x, v6, r1
    dp3 r4.y, v6, r0
    dp3 r4.z, v6, r6
    nrm r5.xyz, r4
    dp3 o6.x, r5, r2
    mov o5.xyz, r5
    dp3 r4.x, v5, r1
    dp3 r1.x, v4, r1
    dp3 r4.y, v5, r0
    dp3 r1.y, v4, r0
    dp3 r4.z, v5, r6
    dp3 r1.z, v4, r6
    nrm r0.xyz, r1
    nrm r1.xyz, r4
    dp3 o6.y, r1, r2
    dp3 o6.z, r0, r2
    mov o4.xyz, r0
    add r0.x, -c104.x, c104.y
    rcp r0.x, r0.x
    mul_sat o3.w, r0.x, r0.w
    mov r3.w, c107.x
    dp4 o7.x, r3, c94
    dp4 o7.y, r3, c95
    dp4 o7.z, r3, c96
    dp4 o7.w, r3, c97
    dp4 r0.x, r3, c90
    dp4 r0.y, r3, c91
    dp4 r0.z, r3, c92
    dp4 r0.w, r3, c93
    mov o0, r0
    mov o8, r0
    mul o1, c107.xxzz, v3.xyxx
    mov o2, c107.z

// approximately 77 instruction slots used
 